package com.tanhua;

import cn.hutool.core.io.FileUtil;
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.model.PutObjectRequest;
import com.baidu.aip.face.AipFace;
import com.baidu.aip.util.Base64Util;
import org.json.JSONObject;
import org.junit.Test;

import java.io.File;
import java.util.HashMap;

public class DemoTest1 {

    @Test
    public void test1(){
        // yourEndpoint填写Bucket所在地域对应的Endpoint。以华东1（杭州）为例，Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
        String endpoint = "https://oss-cn-beijing.aliyuncs.com";
// 阿里云账号AccessKey拥有所有API的访问权限，风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维，请登录RAM控制台创建RAM用户。
        String accessKeyId = "LTAI4G9XqaE9rKQc51KorXqa";
        String accessKeySecret = "0IEmomXoHVtUYCGCsDY7X7YlePoDbZ";

// 创建OSSClient实例。
        OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);

// 创建PutObjectRequest对象。
// 依次填写Bucket名称（例如examplebucket）、Object完整路径（例如exampledir/exampleobject.txt）和本地文件的完整路径。Object完整路径中不能包含Bucket名称。
// 如果未指定本地路径，则默认从示例程序所属项目对应本地路径中上传文件。
        //参数1：要上传的bucket名称
        //参数2：要上传到bucket中的文件名
        //参数3：要上传的图片
        String path="images/2021-08-06/123456.jpg";
        File file = new File("C:\\Users\\muzimoo\\Desktop\\图片\\美图\\1553745034248.png");
        PutObjectRequest putObjectRequest = new PutObjectRequest("javaee159", path,file);

// 如果需要上传时设置存储类型和访问权限，请参考以下示例代码。
// ObjectMetadata metadata = new ObjectMetadata();
// metadata.setHeader(OSSHeaders.OSS_STORAGE_CLASS, StorageClass.Standard.toString());
// metadata.setObjectAcl(CannedAccessControlList.Private);
// putObjectRequest.setMetadata(metadata);

// 上传文件。
        ossClient.putObject(putObjectRequest);

// 关闭OSSClient。
        ossClient.shutdown();
    }




    @Test
    public void test2(){

        // 初始化一个AipFace
        AipFace client = new AipFace("24659193", "p7HTonD6B0n9EIkszDajTfNL", "aYs7KjmNAgNuMTSgm51vLi0CdTjy9L8W");

        // 传入可选参数调用接口
        HashMap<String, String> options = new HashMap<String, String>();
        options.put("face_field", "age");
        options.put("max_face_num", "2");
        options.put("face_type", "LIVE");
        options.put("liveness_control", "LOW");


        //更改
        File file = new File("C:\\Users\\muzimoo\\Desktop\\图片\\011.jpg");
        byte[] bytes = FileUtil.readBytes(file);
        String image = Base64Util.encode(bytes);
        String imageType = "BASE64";

        // 人脸检测
        JSONObject res = client.detect(image, imageType, options);
        System.out.println(res.toString(2));
    }
}
